Hi Mike,
Yes you can modify the feedhold button to command a Hardware Feedhold in KFLOP. The button would do a NotifyPlugins(), to execute the Notify.c program, to make a StopCoordinatedMotion(); call. Mach3 is not aware of hardware feed hold. As far as it is concerned motion is still in progress (but just taking a really really long time). So it is not possible to do things like Jog or change offsets while in Hardware feed hold. To do something like that you would need to hit Stop first.
This would be instantaneous 99% of the time. To get 100% reliability an external button wired directly to KFLOP is required to avoid occasional MS Windows delays.
We don't have a solution for instant feed rate changes. Feed rate changes can totally change the trajectory planning through the motion path. For example deceleration may be required many segments sooner. It is very difficult to handle on-the-fly. KFLOP hardware feedhold works in a simplistic manner where it just slows the progress of "time" to a stop. This doesn't work for feed rate override because it results in incorrect acceleration. It would be like filming a car doing a max acceleration of 0-60MPH in 10 seconds. Then running the projector at 2X rate. It would appear to accelerate 0-120MPH in 5 sec which is clearly unachievable. To really plan on going 120MPH 20 seconds of acceleration would be required and only if there was a long enough straightaway to get up to that speed.
You can minimize the feedrate overide delay by having a lean and fast Windows machine and setting the BufferTime to a minimum value where KFLOP still doesn't occasionally starve for data.
Regards